package com.ship.system.api;

import com.ship.common.core.base.Constant;
import com.ship.common.core.constant.ServiceNameConstants;
import com.ship.system.api.factory.RemoteCommonFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * 通用远程调用
 * 
 * @author zhangyh
 */
@FeignClient(contextId = "remoteCommonService", value = ServiceNameConstants.CONTRACT_SERVICE
        , fallbackFactory = RemoteCommonFallbackFactory.class)
public interface RemoteCommonService
{
    @GetMapping(value = "/contractFeign/contractExpireMessageSend")
    void contractExpireMessageSend();

    @GetMapping(value = "/contractFeign/listByType")
    public List<Constant> listByType(@RequestParam(value = "enumName") String enumName);

    /**
     * 船运合同offhire时间段改变合同状态
     */
    @GetMapping(value = "/checkConShipState")
    void checkConShipState();

}
